﻿Imports System.Collections.Generic
Module Module1
  Sub Main()
    Dim listaCollegata As _
        New LinkedList(Of String)
    Dim nodo1 As _
        New LinkedListNode(Of String) _
        ("Elemento 1")
    listaCollegata.AddFirst(nodo1)
    nodo1 = _
        New LinkedListNode(Of _
        String)("Elemento 2")
    listaCollegata.AddLast(nodo1)
    nodo1 = _
        New LinkedListNode(Of _
        String)("Elemento 3")
    listaCollegata.AddLast(nodo1)
    Console.WriteLine("Numero elementi: " & _
        listaCollegata.Count)
    Console.WriteLine("Primo elemento: " & _
        listaCollegata.First.Value)
    Console.WriteLine("Ultimo elemento: " & _
        listaCollegata.Last.Value)
    Console.WriteLine("Lista degli " & _
        "elementi (semplice): ")
    Dim elemento As String
    For Each elemento In listaCollegata
      Console.WriteLine(elemento.ToString)
    Next
    Console.WriteLine("Lista degli " & _
        " elementi (con enumeratore): ")
    Dim listaEnum As LinkedList(Of _
        String).Enumerator = _
        listaCollegata.GetEnumerator
    Do While listaEnum.MoveNext
      Console.WriteLine(New  _
      LinkedListNode(Of String) _
      (listaEnum.Current).Value)
    Loop
    Console.ReadLine()
  End Sub
End Module
